package com.jic.data.model.vo.request;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.math.BigDecimal;
import java.util.Date;

@Data
@NoArgsConstructor
@ApiModel(description = " 订单主表实体类")
public class MOrderRequest extends BaseEntityRequest {
    private static final long serialVersionUID = 1L;
    // @NotEmpty(message = "主键ID") 
    @ApiModelProperty(notes = "主键ID")

    private Long id;
    // @NotEmpty(message = "请求流水号") 
    @ApiModelProperty(notes = "请求流水号")

    private String serialNo;
    // @NotEmpty(message = "订单父编号") 
    @ApiModelProperty(notes = "订单父编号")

    private String parentOrderNo;
    // @NotEmpty(message = "订单编号") 
    @ApiModelProperty(notes = "订单编号")

    private String orderNo;
    // @NotEmpty(message = "冗余-销售渠道") 
    @ApiModelProperty(notes = "冗余-销售渠道")

    private Integer saleChannel;
    // @NotEmpty(message = "订单标签，VIP、紧急、特别、关注、搁置") 
    @ApiModelProperty(notes = "订单标签，VIP、紧急、特别、关注、搁置")

    private Integer orderTag;
    // @NotEmpty(message = "商户ID") 
    @ApiModelProperty(notes = "商户ID")

    private Long merchantId;
    // @NotEmpty(message = "商户名称") 
    @ApiModelProperty(notes = "商户名称")

    private String merchantName;
    // @NotEmpty(message = "店铺ID") 
    @ApiModelProperty(notes = "店铺ID")

    private Long storeId;
    // @NotEmpty(message = "店铺名称") 
    @ApiModelProperty(notes = "店铺名称")

    private String storeName;
    // @NotEmpty(message = "") 
    @ApiModelProperty(notes = "")

    private String storeLogoUrl;
    // @NotEmpty(message = "下单时间") 
    @ApiModelProperty(notes = "下单时间")

    private Date buyTime;
    // @NotEmpty(message = "购买人") 
    @ApiModelProperty(notes = "购买人")

    private Long buyerId;
    // @NotEmpty(message = "购买人用户名") 
    @ApiModelProperty(notes = "购买人用户名")

    private String buyerUsername;
    // @NotEmpty(message = "购买人真实名称") 
    @ApiModelProperty(notes = "购买人真实名称")

    private String buyerRealname;
    // @NotEmpty(message = "销售总金额") 
    @ApiModelProperty(notes = "销售总金额")

    private BigDecimal saleTotalAmount;
    // @NotEmpty(message = "优惠总金额，优惠金额=销售总金额-购买总金额") 
    @ApiModelProperty(notes = "优惠总金额，优惠金额=销售总金额-购买总金额")

    private BigDecimal discountTotalAmount;
    // @NotEmpty(message = "购买总金额，购买总金额=销售总金额-优惠总金额") 
    @ApiModelProperty(notes = "购买总金额，购买总金额=销售总金额-优惠总金额")

    private BigDecimal buyTotalAmount;
    // @NotEmpty(message = "物流总费") 
    @ApiModelProperty(notes = "物流总费")

    private BigDecimal expressTotalFee;
    // @NotEmpty(message = "实付总金额，实付总金额=购买总金额+物流费") 
    @ApiModelProperty(notes = "实付总金额，实付总金额=购买总金额+物流费")

    private BigDecimal actualPayTotalAmount;
    // @NotEmpty(message = "备注") 
    @ApiModelProperty(notes = "备注")

    private String mark;
    // @NotEmpty(message = "订单状态，初始化、确认收货、已完成、已关闭") 
    @ApiModelProperty(notes = "订单状态，初始化、确认收货、已完成、已关闭")

    private Integer orderStatus;
    // @NotEmpty(message = "版本号") 
    @ApiModelProperty(notes = "版本号")

    private Long version;
    // @NotEmpty(message = "创建人名字") 
    @ApiModelProperty(notes = "创建人名字")

    private String createName;
    // @NotEmpty(message = "修改人") 
    @ApiModelProperty(notes = "修改人")

    private Long updator;
    // @NotEmpty(message = "修改人名字") 
    @ApiModelProperty(notes = "修改人名字")

    private String updateName;
    // @NotEmpty(message = "1标识已删除，0标识未删除") 
    @ApiModelProperty(notes = "1标识已删除，0标识未删除")

    private Integer isDelete;
    // @NotEmpty(message = "运营方ID") 
    @ApiModelProperty(notes = "运营方ID")

    private Long deptId;
    // @NotEmpty(message = "是否拼团商品 1.是 0.否 ") 
    @ApiModelProperty(notes = "是否拼团商品 1.是 0.否 ")

    private Integer groupProductType;
    // @NotEmpty(message = "1.开团 2.参团") 
    @ApiModelProperty(notes = "1.开团 2.参团")

    private Integer groupType;
    // @NotEmpty(message = "团购ID") 
    @ApiModelProperty(notes = "团购ID")

    private String groupId;
    // @NotEmpty(message = "优惠券code") 
    @ApiModelProperty(notes = "优惠券code")

    private String couponCode;
}
